// 采血登记
Ext.extend(CQCIS.module, {
    init: function() {
    	var listMeta = [{
			field: 'bloodId',
            desc: '采血序列号',
            width: 50
		}, {
		    field: 'bloodDonor',
            desc: '献血者姓名',
            width: 50
		}, {
            field: 'bloodNum',
            desc: '献血者身份证',
            width: 100
        }, {
            field: 'bloodType',
            desc: '献血者血型',
            renderer: function(value) {
                switch(value) {
                    case 'A':
                    return 'A型';
                    case 'B':
                    return 'B型';
                    case 'AB':
                    return 'AB型';
                    case 'O':
                    return 'O型';
                    case 'T':
                    return '稀有血型';
                }
                return value;
            },
            width: 40
        }, {
            field: 'bloodVolume',
            desc: '采血量（ML）',
            width: 60
        }, {
            field: 'takeType',
            desc: '采血类型',
            renderer: function(value) {
            	switch(value) {
            		case '1':
            		return '自愿献血';
            		case '2':
                    return '手术用血';
                    case '3':
                    return '有偿采血';
            	}
            	return value;
            },
            width: 50
        }, {
            field: 'workerId',
            desc: '采血者',
            renderer: function(value) {
            	workerDwr.getWorker(value, {
            		callback: function(worker) {
            			if (worker != null) {
            				value = worker.staffName;
            			}            			
            		},
            		async: false
            	});
            	
            	return value;
            },
            width: 80
        }, {
            field: 'takeTime',
            desc: '采血时间',
            type: 'date',
            width: 80
        }, {
            field: 'takeLocation',
            desc: '采血地点',
            renderer: function(value) {
            	takeLocationDwr.getTakeLocation(value, {
            		callback: function(local) {
            			if (local) {
            				value = local.locationName;
            			}
            		},
            		async: false
            	});
                                
                return value;
            },
            width: 100
        }];
        
        // 工具栏增加按钮
        var queryBtn = new Ext.Toolbar.Button({
            text: '查询采血记录',
            iconCls: 'btn_insert',
            handler: function() {
                grid.reload();
            }
        });
        
        // 开始时间
        var startDate = new Ext.form.DateField({
            readOnly: true
        });
        
        // 结束时间
        var endDate = new Ext.form.DateField({
            readOnly: true
        });
                
        // 员工信息grid
        var grid = new CQCIS.grid.PageGrid({
            id: 'sm_takequery_grid',
            firstColumn: 'radio',
            dwr: {
                call: takeDwr.pageTakes
            },
            metas: listMeta,
            tbar: ['采血开始时间:', startDate, '  采血结束时间:', endDate, '  ', queryBtn],
            initload: false,
            bbar: 'true',
            listeners: {
                'loadcheck': function() {
                    if (!startDate.getValue() || !endDate.getValue()) {
                        CQCIS.msg('请选择时间查询!');
                        return false;
                    }
                    if (startDate.getValue() >= endDate.getValue().add(Date.DAY, 1)) {
                        CQCIS.msg('开始时间不能大于结束时间!');
                        return false;
                    }
                                        
                    grid.filter['beginTime'] = startDate.getValue();
                    grid.filter['endTime'] = endDate.getValue().add(Date.DAY, 1);
                }
            }
        });
        
        // 定义关联销毁对象数组，避免内存泄漏
        //this.main.associatedComp = [staffWorkerWin, endueWin, endueConsultWin, endueRoleWin, enduetakeWin];
        // 定义页面主元素
        this.main.add(grid);
        // 布局更新
        this.main.doLayout();
    }
});